home *** CD-ROM | disk | FTP | other *** search
/ Floppyshop 2 / Floppyshop - 2.zip / Floppyshop - 2.iso / diskmags / 0022-3.564 / dmg-0097 / nutworks.07 < prev    next >
Text File  |  1997-04-16  |  50KB  |  1,027 lines

  1. ************************************************************************
  2. ************************************************************************
  3. ***                                                                  ***
  4. ***                                                                  ***
  5. ***                            NutWorks                              ***
  6. ***                           ----------                             ***
  7. ***              The Inter-Net Virtual Magazine Which States         ***
  8. ***                    That Life Is A Four Letter Word.              ***
  9. ***                                                                  ***
  10. ***                                                                  ***
  11. ***         November, 1985;  Issue007, (Volume II, Number 3).        ***
  12. ***         Current Editor: Leonard M. Friedman.                     ***
  13. ************************************************************************
  14. ************************************************************************
  15.  
  16.                           From the Bridge
  17.                           ===============
  18.  
  19. Captains Log:
  20. Stardate 850611
  21. Commander Spock Reporting.
  22.  
  23.    Approximately one and a half years ago something appeared on bitnet
  24. that would  change interpersonal relationships on the network forever.
  25. For it was  then the first  chat machine appeared.   A chat for anyone
  26. who might not know is similar to a CB on the computer.  In other words
  27. you send  one message and  everyone on the channel you are signed onto
  28. will see that message.
  29.  
  30.    The very first chat  appeared in  Maine and provided people with an
  31. excellent way to meet fellow students and discuss Life,  The Universe,
  32. and  Everything,  which  alot of  the time  had  something  to do with
  33. computers.   Discussions  included  recent  political events,  sharing
  34. of ones problems and  many virtual friendships  were  born and a large
  35. number of them went beyond being virtual into real relationships where
  36. the people met and remained friends.
  37.  
  38.    The  chat at  Maine was short lived and was taken down volluntarily
  39. by the  person who  wrote it  for reasons unknown to me.   It was soon
  40. replaced by CHAT@PSUVM1 which would become the model for future  chats
  41. to aspire to.  Discussions there also varied widely and were very kept
  42. in good taste not to affend anyone.    If anyone had personal business
  43. to discuss with a fellow netter they simply created a private password
  44. protected  channel and  went there  and could  talk in whatever manner
  45. they wished without offending anyone.  Hence everyone was happy except
  46. for the staff who said that chatting wasted too much CPU time;  placed
  47. to much of a load on the network,  and was generally disruptive.  This
  48. eventually spelled the end of the CHAT at PSUVM.
  49.  
  50.    During this time  many chats  popped  up and died.   It  became  an
  51. adventure to try and keep up with the chats that were currently active
  52. and those that had been shut down.  Some of the chats worth mentioning
  53. are Multi-Talk, Missing Link, and various others...
  54.  
  55.    Out  Of the  chats  grew something called  "Conferencing machines",
  56. Relay and Forum  are examples.   Relay and Forum  have the  same basic
  57. concept as chats with a few differences  (which will be the discussion
  58. of  a  future  article  on the  evolution  and  history  of chats  and
  59. conferencing systems).  The main  difference that I  want to point out
  60. is that  many schools  decided  that  they would  tolerate  them  on a
  61. trial basis.
  62.  
  63.    The Conferencing machines are a great and wonderful thing when used
  64. with  "PROPER DISCRETION".  There are  several  rules that  constitute
  65. proper discretion:
  66.  
  67.            1) Thou shalt not  chat  and take up a  terminal when other
  68.               people are waiting that have to do work.  (For those who
  69.               will  say  that  I  am  hogging  a  terminal  and  being
  70.               disruptive myself  when doing this  magazine allow me to
  71.               point out the fact that  I have my own  terminal at home
  72.               and  hence am  bothering no one,  nor preventing  anyone
  73.               from doing any work.)  In  some schools  they  can  just
  74.               throw you off the terminal if you are just sitting there
  75.               chatting and preventing others who need to  do work from
  76.               doing so. I think that this policy should be implemented
  77.               NETWORK WIDE.
  78.  
  79.            2) Thou  shalt  not  be  abusive  to  fellow  users.  It is
  80.               apparent  that  many of  the new  users do not know what
  81.               abusive means so i will explain further.
  82.  
  83.               a)  Thou shalt not curse. Not only is it not neccessary,
  84.                   but it is offensive to people.
  85.  
  86.               b)  Thou  shalt  not  be  generally  obnoxious  to other
  87.                   chatters.  Try and  keep things in  GOOD TASTE  will
  88.                   ya!
  89.  
  90.               c)  Thou shalt  not enagage  in so called  computer-sex,
  91.                   compu-sex, bitsex,  or whatever you want to call it.
  92.                   In other  words to the girl  who has  caused  such a
  93.                   fire on csnews flame  I  don't care  if you  are wet
  94.                   between the legs !!!  What a slut !!! SHEESH !!!  If
  95.                   you must do that  type stuff,  at least take it to a
  96.                   private channel !!!
  97.  
  98.               d)  Thou shalt not send  pictures  over chats.  Not only
  99.                   is it  annoying to  those  people  who  are  on slow
  100.                   modems,   but  it  increases  RSCS  network  traffic
  101.                   unneccessarily.
  102.  
  103.               e)  Thou shalt not send multiple messages (repeating the
  104.                   same message over and over).  SEE D FOR REASONS.
  105.  
  106.            3) The main thing is SIMPLE CONSIDERATION, nothing more.
  107. lmf
  108. ------------------------------------------------------------------------
  109.  
  110.  
  111.                       Straight from the Horse's Mouth
  112.                       ===============================
  113.  
  114.       After unbearable inquision  concerning the  spelling of the word
  115.    'NutWorks', Brent C.J. Britton, our founder, had this to say:
  116.  
  117.       "Well,  'NutWorks'  is just this  word,  you know ?  I mean,  at
  118.    first we were going to call it 'Networks' or 'Networx' or something,
  119.    the implication  being  that the magazine is a  collection of works
  120.    from around the net.  But once it became obvious that we were going
  121.    to be putting out a HUMOR magazine,  we changed the 'net' to 'nut.'
  122.  
  123.       "The 'W' is capitalized just to make the distinction between the
  124.    two  words  'Nut'  and  'Works.' It can  therefor  be  derived that
  125.    NutWorks is a collection of 'works' done by a bunch of  'nuts' from
  126.    the 'net.' "Actually, off the record, it's a Soviet ploy.  You see,
  127.    'NutWorks',  when converted  to hex,  is  'd5a4a3e6969992a2'  which
  128.    happens to be the firing sequence code on a bunch of Soviet nuclear
  129.    missles or something.
  130.  
  131.       I don't know...  they told me to use  'NutWorks'  and they'd pay
  132.    me a whole sh*tload of money...  hey, turn that tape recorder off!!
  133.    Hey! Get back here!  Oh Sh*t.."
  134.  
  135. ------------------------------------------------------------------------
  136.  
  137.  
  138.                           Software for Nothing
  139.                           ====================
  140.                           by: Brent CJ Britton
  141.  
  142. With appoligies to Mark Knopfler.
  143.  
  144.  
  145. I waaaant my.. I waaaant my... I waaaant my C-R-T......
  146.  
  147. Now look at them hackers,
  148. That's the way ya' do it.
  149. Ya' play with mem'ry that you cannot see.
  150. Now that ain't workin, that's the way ya do it.
  151. Get your software for nothing and your chips for free.
  152.  
  153. Now that ain't workin, gotta CPU-it.
  154. Let me tell ya, them guys ain't dumb.
  155. Maybe crash the system with your little finger,
  156. Maybe crash the system with your thumb.
  157.  
  158.     We got to install micro-data-bases,
  159.     Gotta make things run like a breeeeze.
  160.     We gotta help these foreign students,
  161.     We gotta help these mindless E.E.'s...
  162.  
  163. The little Hacker with the Pepsi and the Munchos:
  164. Yeah, buddy, don't like to SHARE...
  165. The little Hacker got his own compiler,
  166. The little guy don't change his underwear.
  167.  
  168.     We got to install the latest debugger,
  169.     Under budget, and optimiiiiiiized.
  170.     We got to have more muddy-black coffee,
  171.     We got a green glow in our eyyyyyyes...
  172.  
  173. I shoulda' learned to play with Pascal.
  174. I shoulda' learned to program some.
  175. Look at that drive, I'm gonna stick it on the channel,
  176. Man, it's better than the old one...
  177.  
  178. And who's up there, what's that?  Beeping noises?
  179. He's bangin on the keyboard like a chimpanze.
  180. Oh that aint workin, that's the way ya do it,
  181. Get your software for nothin', get your chips for free.
  182.  
  183. ------------------------------------------------------------------------
  184.  
  185.  
  186.                               Advertisement
  187.                               =============
  188.  
  189. Name: CATT - Completely Autonomous Touring Tester
  190.  
  191. Manufactured by: MOMCATT - Makers Of Many CATTs
  192. Anytown USA (Offices around the World)
  193.  
  194. FEATURES
  195.  
  196. Low Power CPU
  197. Self Portable Operation
  198. Dual Video Inputs
  199. Dual Audio Inputs
  200. Audio Output
  201. Main Input Multiplexed with Error Output
  202. Auto Search for Input Data
  203. Auto Search for Output Bin
  204. Auto Learn Program in ROM
  205. Auto Sleep When Not in Use
  206. Wide Operating Temp. Range
  207. Self Cleaning
  208.  
  209. Production Details
  210.  
  211.    After basic construction,   the unit undergoes 6 weeks of ROM
  212. programming and burn-in testing.   MOMCATT will typically reject
  213. inferior products,  but sometimes  people will  salvage rejected
  214. units.  These factory seconds may or may not perform the same as
  215. units  that  pass the standard  acceptance testing.   All of the
  216. previously listed features are  installed during  this interval.
  217. Since  MOMCATT  uses  many  different  suppliers,  there is wide
  218. variation  between the  individual units.  Some of the component
  219. matching  may  be  so poor  that a  feature  may not  even work.
  220. Fortunately,  these units are so cheap that replacement is never
  221. difficult.
  222.  
  223. Set up and Use
  224.  
  225.    When acquiring a  CATT,  it is best to visit  MOMCAT  and see
  226. what units are currently available.  The consumer should examine
  227. each unit to verify that all I/O channels are operational.   The
  228. user  should  also look  for obvious  bugs in  or on the system.
  229. Although these bugs are usually trivial and easily removed, they
  230. are  indicative  of  the  production  environment  at  the local
  231. MOMCATT outlet.  When a CATT has been selected, it should be put
  232. in a  suitable  packing  case for transport to the new operating
  233. environment.  Failure to  properly package a  CATT may result in
  234. damage to the unit or injury to the user.
  235.  
  236.    When the  CATT  is first brought up,  it should be in a quiet
  237. room, with only the primary user(s) present.  The CATT should be
  238. taken out of the  shipping crate and  the self learning  program
  239. should be started by showing the CATT the output bin.   The next
  240. step is to show the CATT the input bin(s).  Some CATTs need more
  241. help getting started than other CATTs.   If the user already has
  242. one  CATT  and is  bringing up  a second,  it may be possible to
  243. download the new CATT from the older more experienced CATT.   In
  244. either case,   the new CATT should be in self learn mode most of
  245. the first  day or two.   When  the  CATT  is new,  it also has a
  246. tendency to  sleep()  when the learn buffer overflows.   THIS IS
  247. NORMAL. When the learn buffer fills, the CATT will go to sleep(),
  248. and the  DMA system  will take  over  and store  the new data in
  249. permanent  memory.  In  a  few  days,  the  CATT  will be freely
  250. interacting with the operating environment.   The user should be
  251. aware that the  CATT  is still too  new to be allowed out of the
  252. home. Full portability comes later,  after more extended burn-in
  253. (some users never let the  CATT  out,  this has some advantages,
  254. such as longer unit life).  You should also know  that if a CATT
  255. gets used to going out,   you will  have a  hard time keeping it
  256. inside for  extended  periods  of time.   One other caution,  if
  257. allowed out,  a CATT may try to port itself to the other side of
  258. the street.  Some  CATTs  have been  known to take  fatal errors
  259. during this process, errors which are never recoverable.
  260.  
  261.    Your  CATT  should have it's own system name.  This name will
  262. have to be repeated for the  CATT  many times so  that the learn
  263. program reads it correctly. This will be important later on when
  264. you want to get the  CATT's  attention.   Another way to get the
  265. CATT's attention is to boot it.   While this is a very effective
  266. method, some users feel that too much booting is akin to abusing
  267. the system.  If the  CATT knows it's system name,  you can cause
  268. the CATT to boot itself by shouting the name at it.
  269.  
  270.    Many  users  want to play  games on their system.  CATTs play
  271. games best when they are young.   Older CATTs seem to lose their
  272. flexibility, and their joy-sticks lose calibration too.  Some of
  273. the better CATT games are:    FETCH, MIRROR, STRING, SQRT, JUMP,
  274. and CHASE. FETCH is played the same as with the K-9 system,  the
  275. only difference is that the object code must be smaller.  MIRROR
  276. is played by placing the  CATT in front of a mirror and watching
  277. it attempt to parse itself.  Occasionally,  the CATT will become
  278. alarm()ed by the mirror image, panic(), and run away. Re-booting
  279. will get it back up.  STRING is a game where the CATT parses the
  280. end of a data string that is dragged along the floor.  SQRT is a
  281. game for when the CATT does something that you do not like,  you
  282. use the well known aversion to water as a form of negative feed-
  283. back.  JUMP is a game like STRING, only the data string is moved
  284. through the air  and the  CATT  reaches new  heights of parsing.
  285. JUMP may also be played with a stairway or CATT pole.   In these
  286. versions,  the  CATT  jumps down instead of up.   Some users may
  287. combine the two games for even more action. CHASE is a game that
  288. is played with two  CATTs  or a CATT and a  K-9  system. In this
  289. game,   each  system takes a turn as the data,   while the other
  290. tries to parse it. Many other games are also possible.   Some of
  291. these are:  SING,  and DANCE.  These  games rely  on the  CATT's
  292. desire for  fishy input data.  By tempting the  CATT  with fishy
  293. data, you can extract many wonderful audio outputs.
  294.  
  295. Maintenance
  296.  
  297.    CATTs usually require  little  maintenance.   Every year they
  298. should be taken to a VET (Vastly Experienced Technician) for PM.
  299. The VET will check the I/O ports and the operating hardware. Any
  300. problems that arise between visits  should also be  taken to the
  301. VET. VET fees are usually reasonable. Some CATTs are perodically
  302. plagued by heat problems. A trip to the VET can fix this problem
  303. permanently.
  304.  
  305. Conclusions
  306.  
  307.    As CATTs get older they  generally  become  more docile.  The
  308. learn  program becomes more efficient and they sometimes get too
  309. smart  for  their  own  good.   Some  CATTs  even start to watch
  310. television  (encourage them to watch NOVA,  it is good for them,
  311. esp.  shows about birds and spiders).  Another  good  thing  for
  312. CATTs is tropical fish (yes, it is hard to believe, but they  do
  313. start hobbies). Most CATTs also like to have a few toys. This is
  314. OK until they rip them open to  see what is inside.   A properly
  315. cared for CATT can give you years of steady service.  Many users
  316. like the first so much that they will get a second or even third
  317. CATT. Most people really don't need all the extra capacity,  but
  318. they enjoy the more complex games that can be run.   I'd like to
  319. hear from other CATT users if they  have any special application
  320. programs  available. If there  is enough  interest maybe  we can
  321. start a news group called net.micro.catt.
  322.  
  323. ------------------------------------------------------------------------
  324.  
  325.  
  326.                        JACKPOTTING: What is it?
  327.                        ========================
  328.             (Contributed by the Mad Pirate RAAQC987@CUNYVM)
  329.  
  330.  
  331.        JACKPOTTING was done rather successfully a while back in
  332.        (you guessed it) New York.
  333.  
  334. What the culprits did was:
  335.  
  336.      Sever (actually cross over) the line between the ATM and the
  337.      host.  insert a  microcomputer between the ATM and the host.
  338.      insert a fradulent card into the ATM. (card = cash card, not
  339.      hardware)
  340.  
  341. What the ATM did was:
  342.  
  343.      Send a signal to the host, saying "Hey!  Can I give this guy
  344.      money, or is he broke, or is his card invalid?"
  345.  
  346. What the microcomputer did was:
  347.  
  348.      Intercept the  signal  from the host,   discard it,   send a
  349.      there is no one using the ATM" signal.
  350.  
  351. What the host did was:
  352.  
  353.      Get the "no one using" signal, send back a  "Okay,  Then for
  354.      for God's sake don't spit out any money!"  signal to ATM.
  355.  
  356. What the microcomputer did was:
  357.  
  358.      Intercept signal (again), throw it away (again), send  "Wow!
  359.      That guy is like  TOO  rich!   Give him as much  money as he
  360.      wants.  In fact,  he's so loaded,  give him  ALL the cash we
  361.       have!  He is really a valued customer." signal.
  362.  
  363. What the ATM did:
  364.  
  365.      What else?  Obediently dispense cash till the cows came home
  366.      (or very nearly so).
  367.  
  368. What the crooks got:
  369.  
  370.      Well, in excess of  $120,000  (for one weekend's work),  and
  371.      several years when they were caught.
  372.  
  373.  
  374.    This story was used at a  CRYPTOGRAPHY  conference  I attended
  375. a while  ago  to  demonstrate  the  need  for better  information
  376. security.  The lines between  ATM's  &  their hosts  are  usually
  377. 'weak' in the sense that the  information  transmitted on them is
  378. generally  not  encrypted  in  any  way.   One  of the  ways that
  379. JACKPOTTING can be defeated is to encrypt the information passing
  380. between the  ATM  and the host.   As long as the  key  cannot  be
  381. determined from the cipher text, the transmission  (and hence the
  382. transaction) is secure.
  383.  
  384.    A more believable,  technically accurate story might concern a
  385. person who uses a computer between the  ATM and the host in order
  386. to  determine the  key  before  actually  fooling  the  host.  As
  387. everyone knows,  people find  cryptanalysis  a very  exciting and
  388. engrossing subject ...don't they?  (Hee-Hee)
  389.  
  390.          __________
  391.           |        |--<<<<---|    |---<<<<---------/-----\
  392.           |  ATM   |   microcomputer              / host  \
  393.           |        |         |    |               |       |
  394.           |        |         |    |                \      /
  395.           |________|--->>>>--|    |--->>>>----------\----/
  396.  
  397.  
  398.    I know the person that accomplished this feat,  here in Orange
  399. County. In the following, "B of A" = Bank of America.
  400.  
  401. in the very recent past:
  402.  
  403.    The  B of A  ATM's  are connected through dedicated lines to a
  404. host  computer  as  the  Bishop said.   However,  for maintenance
  405. purposes,  there is at least one separate dial-up line also going
  406. to that same host computer. This guy basically BS'ed his way over
  407. the phone  until  he found  someone stupid enough to give him the
  408. number.   After finding that,  he had has Apple hack at the code.
  409. Simple.
  410.  
  411. Step 2:
  412.  
  413.     He had a friend go to an  ATM  with any  B of A ATM card.  He
  414. stayed at home with the  Apple  connected  to the host.  When his
  415. friend inserted the card, the host displayed it. The guy with the
  416. Apple modified the  status & number  of the  card directly in the
  417. host's memory.  He turned the card into a security card, used for
  418. testing  purposes.  At that  point,  the  ATM  did  whatever  its
  419. operator told it to do.
  420.  
  421.    The next day,   he went into the bank with the  $2000  that he
  422. received, talked to the manager and told him every detail of what
  423. he'd done.  The manager  gave him his  business card and told him
  424. that he had a job waiting for him when he got out of school.
  425.  
  426.    Now,  B of A  has been warned,  they  might have  changed  the
  427. system.   On the other hand,  it'd be awful  expensive to do that
  428. over  the whole  country when  only a  handful of people have the
  429. resources and  even less  have the  intelligence to duplicate the
  430. feat. Who knows?
  431.  
  432. -----------------------------------------------------------------------
  433.  
  434.  
  435.              "Real Programmers Don't Use PASCAL"  PART I
  436.              ===========================================
  437.             (Contributed by Chris Condon  BITLIB@YALEVMX)
  438.  
  439.  
  440.      Back in the good old days -- the "Golden Era" of computers,  it
  441.   was easy to separate the men from the boys (sometimes called "Real
  442.   Men" and "Quiche Eaters" in the literature).   During this period,
  443.   the Real Men were the ones  that understood  computer programming,
  444.   and the Quiche Eaters were the ones that didn't.   A real computer
  445.   programmer  said  things like  "DO 10 I=1,10"  and  "ABEND"  (they
  446.   actually talked in capital letters, you understand),  and the rest
  447.   of the world said things like   "computers are too complicated for
  448.   me" and "I can't relate to computers -- they're so impersonal". (A
  449.   previous work points out that Real Men don't "relate" to anything,
  450.   and aren't afraid of being impersonal.)
  451.  
  452.      But, as usual, times change. We are faced today with a world in
  453.   which  "little old ladies"  can get  computers in  their microwave
  454.   ovens, 12-year-old kids can blow Real Men out of the water playing
  455.   "Asteroids" and "Pac-Man",  and anyone can buy and even understand
  456.   their very own Personal Computer. The Real Programmer is in danger
  457.   of  becoming extinct,  of being  replaced by  high-school students
  458.   with TRASH-80's.
  459.  
  460.      There is a clear need to point out the differences between  the
  461.   typical high-school junior "Pac-Man" player and a Real Programmer.
  462.   If  this  difference  is  made  clear, it  will  give  these  kids
  463.   something to aspire to -- a role model,  a Father Figure.  It will
  464.   also  help explain to the  employers of  Real Programmers  why  it
  465.   would be a mistake to replace the  Real Programmers on their staff
  466.   with  12 - year - old "Pac-Man" players  (at a considerable salary
  467.   savings).
  468.  
  469.  
  470.                            LANGUAGES
  471.                            ---------
  472.  
  473.      The easiest way to tell a Real Programmer from the  crowd is by
  474.   the programming language he  (or she)  uses.  Real Programmers use
  475.   FORTRAN.  Quiche Eaters use PASCAL.  Nicklaus Wirth,  the designer
  476.   of PASCAL,   gave a talk once  at which he was asked   "How do you
  477.   pronounce your name?". He replied,"You can either call me by name,
  478.   pronouncing it 'Veert',  or call me by value,  'Worth'."   One can
  479.   tell immediately from this comment that Nicklaus Wirth is a Quiche
  480.   Eater.  The only  parameter  passing  mechanism  endorsed by  Real
  481.   Programmers is call-by-value-return, as implemented in the IBM\370
  482.   FORTRAN-G and H compilers.   Real programmers don't need all these
  483.   abstract  concepts to  get  their jobs  done -- they are perfectly
  484.   happy with a keypunch, a FORTRAN IV compiler, and a beer.
  485.  
  486.      *  Real Programmers do List Processing in FORTRAN.
  487.  
  488.      *  Real Programmers do String Manipulation in FORTRAN.
  489.  
  490.      *  Real Programmers do Accounting (if they do it at all)
  491.                          in FORTRAN.
  492.  
  493.      *  Real Programmers do Artificial Intelligence programs
  494.                          in FORTRAN.
  495.  
  496.   If you can't do it in FORTRAN, do it in assembly language.  If you
  497.   can't do it in assembly language, it isn't worth doing.
  498.  
  499.  
  500.                      STRUCTURED PROGRAMMING
  501.                      ----------------------
  502.  
  503.      The academics in computer science have gotten into the "struct-
  504.   ured programming" rut over the past several years. They claim that
  505.   programs  are more  easily understood  if the programmer uses some
  506.   special language constructs and techniques.   They don't all agree
  507.   on exactly which constructs, of course, and the examples  they use
  508.   to show their particular point of view  invariably fit on a single
  509.   page of some obscure  journal or  another -- clearly not enough of
  510.   an example to convince anyone. When I got out of school, I thought
  511.   I was the best programmer in the world.   I could write an unbeat-
  512.   able tic-tac-toe program,   use five different computer languages,
  513.   and create 1000-line programs that  WORKED.  (Really!)  Then I got
  514.   out into the Real World.    My first task in the Real World was to
  515.   read and understand a 200,000-line FORTRAN program,  then speed it
  516.   up by a factor of two.  Any Real Programmer will tell you that all
  517.   the Structured Coding  in the world won't help you solve a problem
  518.   like that -- it takes actual talent.    Some quick observations on
  519.   Real Programmers and Structured Programming:
  520.  
  521.      *  Real Programmers aren't afraid to use GOTO's.
  522.  
  523.      *  Real Programmers can write five-page-long DO loops without
  524.                          getting confused.
  525.  
  526.      *  Real Programmers like Arithmetic IF statements -- they make
  527.                          the code more interesting.
  528.  
  529.      *  Real Programmers write self-modifying code, especially if
  530.                          can save 20 nanoseconds in the middle of
  531.                          a tight loop
  532.  
  533.      *  Real Programmers don't need comments -- the code is obvious.
  534.  
  535.      *  Since FORTRAN doesn't have a structured IF,  REPEAT - UNTIL,
  536.         or CASE statement,   Real Programmers  don't  have  to worry
  537.         about not using them.   Besides,  they can be simulated when
  538.         necessary using assigned GOTO's.
  539.  
  540.      Data  Structures  have  also  gotten  a  lot  of  press lately.
  541.   Abstract Data Types, Structures, Pointers, Lists, and Strings have
  542.   become  popular in certain  circles.   Wirth  (the above-mentioned
  543.   Quiche Eater)   actually wrote  an entire book contending that you
  544.   could write a program  based on  data structures,   instead of the
  545.   other way around.   As all Real Programmers know,  the only useful
  546.   data structure is the Array.  Strings, lists, structures,  sets --
  547.   these are all special cases of arrays  and can be treated that way
  548.   just as easily without  messing up  your programing  language with
  549.   all sorts of complications. The worst thing about fancy data types
  550.   is that you have to declare them,  and Real Programming Languages,
  551.   as we all know, have implicit typing based on the  first letter of
  552.   the (six character) variable name.
  553.  
  554.  
  555.                        OPERATING SYSTEMS
  556.                        -----------------
  557.  
  558.      What kind of  operating  system  is used by a  Real Programmer?
  559.   CP/M? God forbid -- CP/M, after all,  is basically a toy operating
  560.   system.   Even  "little old ladies"  and grade school students can
  561.   understand and use CP/M.
  562.  
  563.      Unix is a  lot more  complicated  of course -- the typical Unix
  564.   hacker never can remember what the  "PRINT" command is called this
  565.   week -- but  when it  gets right  down to it,  Unix is a glorified
  566.   video game.   People don't do  Serious Work on Unix systems:  they
  567.   send jokes around the world on  UUCP-net and write adventure games
  568.   and research papers.
  569.  
  570.      No, your Real Programmer uses   OS\370.   A good programmer can
  571.   find and understand the description of the  IJK305I  error he just
  572.   got in his JCL manual.  A great programmer  can write  JCL without
  573.   referring to the manual at all. A truly outstanding programmer can
  574.   find bugs buried in a  6 megabyte  core dump  without using a hex-
  575.   calculator.  (I have actually seen this done.)
  576.  
  577.      OS is a truly  remarkable  operating system.   It's possible to
  578.   destroy days of work with a single misplaced space,   so alertness
  579.   in the programming staff is encouraged.   The best way to approach
  580.   the system is through a  keypunch.   Some people  claim there is a
  581.   Time Sharing system that runs on OS\370, but after careful study I
  582.   have come to the conclusion that they were mistaken.
  583.  
  584.  
  585.                        PROGRAMMING TOOLS
  586.                        -----------------
  587.  
  588.      What kind of tools  does a  Real Programmer use?  In theory,  a
  589.   Real Programmer  could run his  programs by  keying them  into the
  590.   front panel of the computer.   Back in the days when computers had
  591.   front panels,  this was actually done occasionally.   Your typical
  592.   Real Programmer knew the entire bootstrap loader by memory in hex,
  593.   and toggled it in whenever it got destroyed by his program.  (Back
  594.   then,   memory was memory -- it didn't go away when the power went
  595.   off.  Today,   memory either forgets things when you don't want it
  596.   to,   or remembers  things long  after  they're better forgotten.)
  597.   Legend  has  it  that  Seymore  Cray,   inventor  of  the  Cray  I
  598.   supercomputer  and  most  of  Control Data's  computers,  actually
  599.   toggled the first operating system for the CDC7600 in on the front
  600.   panel from memory when it was first powered on.  Seymore, needless
  601.   to say, is a Real Programmer.
  602.  
  603.      One of my favorite  Real Programmers  was a  systems programmer
  604.   for Texas Instruments.  One day he got a long distance call from a
  605.   user  whose  system  had  crashed  in the  middle of  saving  some
  606.   important work. Jim was able to repair  the damage over the phone,
  607.   getting the user to toggle in  disk I/O instructions  at the front
  608.   panel, repairing system tables in hex,   reading register contents
  609.   back  over the  phone.  The  moral  of this  story:   while a Real
  610.   Programmer  usually includes  a  keypunch and  lineprinter  in his
  611.   toolkit,  he can get along with just a front panel and a telephone
  612.   in emergencies.
  613.  
  614.      In some companies,   text  editing  no  longer  consists of ten
  615.   engineers standing in line to use an 029 keypunch.   In fact,  the
  616.   building I work in  doesn't  contain a single keypunch.   The Real
  617.   Programmer  in this  situation  has to  do his  work with a  "text
  618.   editor"  program.  Most systems  supply several  text  editors  to
  619.   select from,  and the Real Programmer  must be careful to pick one
  620.   that reflects  his personal  style.  Many people  believe that the
  621.   best text editors  in the world were  written  at  Xerox Palo Alto
  622.   Research  Center for  use  on  their  Alto and  Dorado  computers.
  623.   Unfortunately,  no Real Programmer would ever use a computer whose
  624.   operating system is called SmallTalk, and would certainly not talk
  625.   to the computer with a mouse.
  626.  
  627.      Some of the concepts in these Xerox editors have been incorpor-
  628.   ated into  editors  running on  more  reasonably  named  operating
  629.   systems -- EMACS and VIbeing two.   The problem with these editors
  630.   is that Real Programmers consider   "what you see is what you get"
  631.   to be just as bad a concept in Text Editors as it is in women.  No
  632.   the Real Programmer wants a   "you asked for it, you got it"  text
  633.   editor -- complicated,  cryptic, powerful, unforgiving, dangerous.
  634.   TECO, to be precise.
  635.  
  636.      It has been observed that a TECO  command sequence more closely
  637.   resembles transmission line noise than readable text.   One of the
  638.   more entertaining games to play with TECO  is to type your name in
  639.   as a command line  and try to  guess what it does.  Just about any
  640.   possible  typing  error  while  talking  with  TECO  will probably
  641.   destroy  your  program,  or  even  worse -- introduce  subtle  and
  642.   mysterious bugs in a once working subroutine.
  643.  
  644.      For this reason,   Real Programmers  are  reluctant to actually
  645.   edit a program that is close to working.  They find it much easier
  646.   to just patch the binary object code directly,   using a wonderful
  647.   program called SUPERZAP   (or its equivalent on non-IBM machines).
  648.   This works so well that many  working programs on IBM systems bear
  649.   no relation to the original  FORTRAN code.    In many cases,   the
  650.   original source code is no longer available. When it comes time to
  651.   fix a program like this,    no manager would even think of sending
  652.   anything less than a  Real Programmer  to do the job -- no  Quiche
  653.   Eating structured programmer would even know where to start.  This
  654.   is called "job security".
  655.  
  656.           Some programming tools NOT used by Real Programmers:
  657.  
  658.      *  FORTRAN preprocessors like  MORTRAN and RATFOR.  The
  659.         Cuisinarts of programming -- great for making Quiche.
  660.         See comments above on structured programming.
  661.  
  662.      *  Source language debuggers. Real Programmers can read core
  663.         dumps.
  664.  
  665.      *  Compilers with array bounds checking. They stifle creat-
  666.         ivity,  destroy most of the interesting  uses for  EQUI-
  667.         VALENCE, and make it impossible to modify the  operating
  668.         system.   code with negative subscripts.   Worst of all,
  669.         bounds checking is inefficient.
  670.  
  671.      *  Source code maintenance systems. A Real Programmer keeps his
  672.         code locked up in a card file,   because it implies that its
  673.         owner cannot leave his important programs unguarded.
  674.  
  675.  
  676.               A long time ago, on a node far, far away (from ucbvax)
  677.               a great Adventure (game?) took place...
  678.  
  679. ------------------------------------------------------------------------
  680.  
  681.  
  682.         XXXXX   XXXXXX   XXXX        X    X    XX    XXXXX    XXXX    X
  683.         X    X  X       X    X       X    X   X  X   X    X  X    X   X
  684.         X    X  XXXXX   X            X    X  X    X  X    X   XXXX    X
  685.         X    X  X       X            X XX X  XXXXXX  XXXXX        X   X
  686.         X    X  X       X    X       XX  XX  X    X  X   X   X    X
  687.         XXXXX   XXXXXX   XXXX        X    X  X    X  X    X   XXXX    X
  688.  
  689.             It is a period of system war.  User programs striking from
  690.          a hidden directory,  have won their first victory against the
  691.          evil Administrative Empire.  During  the battle,   User spies
  692.          managed to steal secret source code to the Empire's  ultimate
  693.          program:  The  Are-Em Star,  a privileged root  program  with
  694.          enough power to  destroy  an entire file  structure.  Pursued
  695.          by the Empire's sinister audit trail,   Princess Linker races
  696.          aboard her  shell script,  custodian  of the  stolen listings
  697.          that could save her people,  and restore freedom and games to
  698.          the network...
  699.  
  700.          -------------------------------------------------------------
  701.  
  702.             THE CONTINUING SAGA OF THE ADVENTURES OF LUKE VAXHACKER
  703.  
  704.          -------------------------------------------------------------
  705.  
  706.             Luke  had grown  up on an  out of the way terminal cluster
  707.          whose natives spoke only BASIC,  but even  he could recognize
  708.          an old ASR-33. "It needs an EIA conversion at least," sniffed
  709.          3CPU, who was (as usual) trying to do several things at once.
  710.  
  711.             Lights flashed in  Con Solo's  eyes  as he whirled to face
  712.          the  parallel  processor.   "I  have  added  a  few  jumpers.
  713.          The Milliamp Falcon can run current loops around any Imperial
  714.          TTY fighter.   She  is fast  enough  for you."   "Who is your
  715.          co-pilot?" asked PDP-1 Kenobie. "Two Bacco, here, my Bookie."
  716.          "Odds aren't good,"  said the brownish lump beside him,   and
  717.          then fell silent,  or over.  Luke couldn't tell which way was
  718.          top underneath  all those  leaves.  Suddenly,  RS232  started
  719.          spacing wildly. They turned just in time to see a write cycle
  720.          coming down the UNIBUS toward them.   "Imperial Bus Signals!"
  721.          shouted Con Solo.   "Let's boot this popsicle stand!   Tooie,
  722.          set clock fast!"  "Ok, Con," said Luke.  "You said this crate
  723.          was fast enough.  Get us out of here!"   "Shut up,  kid!  Two
  724.          Bacco,   prepare to make the jump into system space! I'll try
  725.          to keep their buffers full."   As the bookie began to compute
  726.          the  vectors  into  low core,  spurious  characters  appeared
  727.          around the Milliamp Falcon.  "They're firing!"  shouted Luke.
  728.          "Can't you do something?"
  729.  
  730.             "Making the  jump  to system  space takes time,  kid.  One
  731.          missed cycle and you could come down right in the middle of a
  732.          pack of stack frames!"  "Three to five we can go now,"   said
  733.          the  bookie.   Bright chunks  of  position  independent  code
  734.          flashed by the cockpit as the  Milliamp Falcon jumped through
  735.          the  kernel  page  tables.  As the  crew  breathed  a sigh of
  736.          relief, the bookie started paying off bets.  "Not bad, for an
  737.          acoustically coupled network," remarked 3CPU.   "Though there
  738.          was a little phase jitter as we changed parity."
  739.  
  740.          -------------------------------------------------------------
  741.  
  742.             << Princess Linker's capture  and rm of /usr/alderaan >>
  743.  
  744.          -------------------------------------------------------------
  745.  
  746.              The Milliamp Falcon hurtles on through system space...
  747.  
  748.             Con Solo  finished checking the various control and status
  749.          registers,  finally  convinced himself that they had lost the
  750.          Bus Signals as they  passed the  terminator.   As he returned
  751.          from the I/O page,  he smelled smoke.  Solo wasn't concerned.
  752.          The Bookie always got a little hot  under the  collar when he
  753.          was  losing  at chess.  In fact,  RS232  had just  executed a
  754.          particularly clever MOV that had  blocked the  Bookie's  data
  755.          paths. The Bookie, who had been setting the odds on the game,
  756.          was caught  holding  all the cards.  A  little  strange for a
  757.          chess game...
  758.  
  759.          Across the  room,  Luke  was too  busy  practicing  bit-slice
  760.          technique to  notice the  commotion.  "On  a  word  boundary,
  761.          Luke,"  said PDP-1.  "Don't  just hack at it.  Remember,  the
  762.          Bytesaber is the weapon of the Red-eye Night.   It is used to
  763.          trim offensive lines of code.  Excess  handwaving  won't  get
  764.          you anywhere.  Listen for the Carrier."
  765.  
  766.             Luke turned back to the drone,   which was humming quietly
  767.          in the air next to him.  This time Luke's actions complement-
  768.          ed  the  drone's  attacks  perfectly.   Con Solo,   being  an
  769.          unimaginative  hacker,  was not impressed.  "Forget this bit-
  770.          slicing stuff.  Give me a good  ROM blaster any day."  "~~j~~
  771.          hhji~~,"  said Kenobie,  with no  clear  inflection.  He fell
  772.          silent for a few seconds,  and reasserted his control.  "What
  773.          happened?"   asked Luke.  "Strange,"  said PDP-1.   "I felt a
  774.          momentary glitch in the Carrier.  It's equalized now."
  775.  
  776.             "We're coming up on user space," called Solo from the CSR.
  777.          As they cruised safely through  stack frames,  the emerged in
  778.          the new context only to be bombarded by freeblocks.
  779.  
  780.             "What the..." gasped Solo.  The screen showed clearly:
  781.  
  782.                         /usr/alderaan: not found
  783.  
  784.             "It's the right inode, but it's been cleared! Twoie, where
  785.          is the nearest  file?"  "3 to 5  there is one..."  the Bookie
  786.          started to say,  but was interrupted by a bright flash off to
  787.          the left. "Imperial TTY fighters!" shouted Solo.  "A whole DZ
  788.          of them!  Where are they coming from?" "Can't be far from the
  789.          host  system,"  said  Kenobie.  "They  all  have  direct  EIA
  790.          connections."
  791.  
  792.             As  Solo began  to give chase,  the ship lurched suddenly.
  793.          Luke noticed the link count was at  3  and  climbing rapidly.
  794.          "This is no regular file,"   murmured Kenobie.   "Look at the
  795.          ODS  directory  structure ahead!   They  seem to have us in a
  796.          tractor beam." "There's no way we will unlink in time,"  said
  797.          Solo.  "We're going in."
  798.  
  799.          -------------------------------------------------------------
  800.  
  801.             Stay tuned as for are next issue whe we find out how Luke,
  802.          Con and the good Princess get out of this fine mess  they're
  803.          in. --Ed
  804.  
  805.          -------------------------------------------------------------
  806.  
  807. ------------------------------------------------------------------------
  808.  
  809.  
  810.                       OP CODES PART II (F - Q)
  811.                       ========================
  812.                 (Contributed By Knappy 8350428 @ UWAVM)
  813.  
  814.     mnemonic      meaning
  815.     --------      -------
  816.     FB            Find Bugs
  817.     FCJ           Feed Card and Jam
  818.     FDR           Fill Disk Randomly
  819.     FFF           Form Feed Forever
  820.     FLD           FLing Disc
  821.     FLI           Flash Lights Impressively
  822.     FM            Forget Memory
  823.     FMP           Finish My Program
  824.     FOPC          [Set] False Out-of-paper Condition
  825.     FPC           Feed Paper Continuously
  826.     FPT           Fire Photon Torpedoes
  827.     FRG           Fill with Random Garbage
  828.     FSM           Fold, Spindle and Mutilate
  829.     FSRA          Forms Skip & Run Away
  830.     GBB           Go to Back of Bus
  831.     GCAR          Get Correct Answer Regardless
  832.     GDP           Grin Defiantly at Programmer
  833.     GDR           Grab Degree and Run
  834.     GENT          GENerate Thesis
  835.     GESE          Generate Exciting Sound Effects
  836.     GEW{JO}       Go to the End of the World {Jump Off}
  837.     GID           Generate Input Device
  838.     GIE           Generate Irreversible Error
  839.     GLC           Generate Lewd Comment
  840.     GMC           Generate Machine Check
  841.     GMCC          Generate Machine Check and Cash
  842.     GND           Guess at Next Digit
  843.     GOD           Generate Output Device
  844.     GORS          GO Real Slow
  845.     GRAB          Generate Random Address & Branch
  846.     GREM          Generate Random Error Message
  847.     GREP          Global Ruin, Expiration and Purgation [UNIX]
  848.     GRMC          Generate Rubber Machine Check
  849.     GS            Get Strange [ randomly  inverts  bits being fed to the
  850.                    instruction decoder"
  851.     GSB           Gulp and Store Bytes
  852.     GSI           Generate Spurious Interrupts
  853.     GSU           Geometric Shift Up
  854.     HAH           Halt And Hang
  855.     HCF           Halt & Catch Fire
  856.     HCP           Hide Central Processor [ makes virtual CPU's act  like
  857.                    virtual memories"
  858.     HCRS          Hang in Critical Section
  859.     HDO           Halt and Disable Operator
  860.     HDRW          Halt and Display Random Word
  861.     HELP          Type "No help available"
  862.     HF            Hide a File
  863.     HGD           Halt, Get Drunk
  864.     HHB           Halt and Hang Bus
  865.     HIS           Halt in Impossible State
  866.     HOO           Hide Operator's Output
  867.     HRPR          Hang up and Ruin Printer Ribbon
  868.     HUAL          Halt Until After Lunch
  869.     IA            Illogical And
  870.     IAI           Inquire and ignore
  871.     IAND          Illogical And
  872.     IBR           Insert Bugs at Random
  873.     ICB           Interrupt, crash and burn
  874.     ICM           Immerse Central Memory
  875.     ICMD          Initiate Core Melt-Down
  876.     ICSP          Invert CRT Screen Picture
  877.     IDC           Initiate Destruct Command
  878.     IDI           Invoke Divine Intervention
  879.     IDPS          Ignore Disk Protect Switch
  880.     IEOF          Ignore End Of File
  881.     IF            Invoke Force
  882.     IGI           Increment Grade Immediately
  883.     IGIT          Increment Grade Immediately Twice
  884.     II            Inquire and Ignore
  885.     IIB           Ignore Inquiry & Branch
  886.     IIC           Insert Invisible Characters
  887.     IIL           Irreversable Infinite Loop
  888.     IM            Imagine Memory
  889.     IMPG          IMPress Girlfriend
  890.     INCAM         INCrement Arbitrary Memory location
  891.     INOP          Indirect No-op
  892.     IO            Illogical Or
  893.     IOI           Ignore Operator's Instruction
  894.     IOP           Interrupt processor, Order Pizza
  895.     IOR           Illogical OR
  896.     IP            Increment and Pray
  897.     IPS           Incinerate Power Supply
  898.     IPS           Increment Processor Status
  899.     IPT           Ignite Paper Tape
  900.     IRB           Invert Record & Branch
  901.     IRB           Invert Record and Branch
  902.     IRC           Insert Random Commands
  903.     IRE           Insert Random Errors
  904.     IRPF          Infinite Recursive Page Fault
  905.     ISC           Ignore Supervisor Calls
  906.     ISC           Insert Sarcastic Comments
  907.     ISI           Ignore Silly Instructions
  908.     ISI           Increment and Skip on Infinity
  909.     ISP           Increment and Skip on Pi
  910.     ITML          Initiate Termites into Macro Library
  911.     IU            Ignore User
  912.     JAA           Jump Almost Always
  913.     JFM           Jump on Full Moon
  914.     JHRB          Jump to H&R Block
  915.     JIL           Jump In Lake
  916.     JM            Jump Maybe
  917.     JMAT          JuMp on Alternate Thursdays
  918.     JNL           Jump when programmer is Not Looking
  919.     JOM           Jump Over Moon
  920.     JRAN          Jump RANdom [ not to be confused with  IRAN  -  Idiots
  921.                    random"
  922.     JRCF          Jump Relative and Catch Fire
  923.     JRGA          Jump Relative and Get Arrested
  924.     JRN           Jump RaNdom
  925.     JRSR          Jump to Random Subroutine
  926.     JT            Jump if Tuesday
  927.     JTR           Jump To Register
  928.     JTZ           Jump to Twilight Zone
  929.     JUMP          don't JUMP
  930.     JWN           Jump When Necessary
  931.     KCE           Kill Consultant on Error
  932.     KUD           Kill User's Data
  933.     LAGW          Load And Go Wrong
  934.     LAP           Laugh At Program(mer)
  935.     LBTPS         Let's Blow This Popsicle Stand (Context switch)
  936.     LCC           Load & Clear Core
  937.     LCD           Load and Clear Disk
  938.     LCK           Lock Console Keyswitch
  939.     LEB           Link Edit Backwards
  940.     LIA           Load Ineffective Address
  941.     LMB           Lose Message & Branch
  942.     LMO           Load and Mug Operator
  943.     LMYB          Logical MaYBe
  944.     LN            Lose inode Number [UNIX]
  945.     LOSM          Log Off System Manager
  946.     LP%PAS        Line Printer - Print And Smear
  947.     LP%RDD        Line Printer - Reverse Drum Direction
  948.     LP%TCR        Line Printer - Tangle and Chew Ribbon
  949.     LPA           Lead Programmer Astray
  950.     LRD           Load Random Data
  951.     LSBL          Lose Super BLock [UNIX only]
  952.     LSPSW         Load and scrample PSW
  953.     LWM           Load Write-only Memory
  954.     MAB           Melt Address Bus
  955.     MAN           Make Animal Noises
  956.     MAZ           Multiply Answer by Zero
  957.     MBC           Make Batch Confetti
  958.     MBH           Memory Bank Hold-up
  959.     MBTD          Mount Beatles on Tape Drive
  960.     MBTOL         Move Bugs to Operator's Lunch
  961.     MC            Move Continuous
  962.     MD            Move Devious
  963.     MDB           Move & Drop Bits
  964.     MDDHAF        Make Disk Drive Hop Across Floor
  965.     MLP           Multiply and Lose Precision
  966.     MLR           Move & Loose Record
  967.     MLSB          Memory Left Shift & Branch
  968.     MMLG          Make Me Look Good
  969.     MNI           Misread Next Instruction
  970.     MOP           Modify Operator's Personality
  971.     MOU           MOunt User [causes computer to screw you once again]
  972.     MOVC          Move Computer
  973.     MPLP          Make Pretty Light Pattern
  974.     MSGD          Make Screen Go Dim
  975.     MSIP          Make Sure Plugged In
  976.     MSR           Melt Special Register
  977.     MST           Mount Scotch Tape
  978.     MT%HRDV       MagTape - High speed Rewind and Drop Vacuum
  979.     MTI           Make Tape Invalid
  980.     MW            Malfunction Whatever
  981.     MWC           Move & Wrap Core
  982.     MWT           Malfunction Without Telling
  983.     NEGP          NEGate Programmer
  984.     NTGH          Not Tonight, I've Got a Headache
  985.     OCF           Open Circular File
  986.     OH            OverHeat
  987.     OML           Obey Murphy's Law
  988.     OPP           Order Pizza for Programmer
  989.     OSI           Overflow Stack Indefinitely
  990.     OTL           Out To Lunch
  991.     PADZ          Pack Alpha & Drop Zones
  992.     PAS           Print And Smear
  993.     PAUD          PAUse Dramatically
  994.     PAZ           Pack Alpha Zone
  995.     PBC           Print & Break Chain
  996.     PBD           Print and Break Drum
  997.     PBM           Pop Bubble Memory
  998.     PBPBPBP       Place Backup in Plain Brown  Paper  Bag, Please " for
  999.                    stealing code"
  1000.     PBST          Play Batch mode Star Trek
  1001.     PCI           Pleat Cards Immediate
  1002.     PCR           Print and Cut Ribbon
  1003.     PD            Punch Disk
  1004.     PEHC          Punch Extra Holes in Cards
  1005.     PFE           Print Floating Eye [Roguers look out!]
  1006.     PFML          Print Four Million Lines
  1007.     PI            Punch Invalid
  1008.     PIBM          Pretend to be an IBM
  1009.     PIC           Print Illegible Characters
  1010.     PIC           Punch Invalid Character
  1011.     PIRI          Print In Red Ink
  1012.     PLSC          Perform light show on console
  1013.     PNRP          Print Nasty Replies to Programmer
  1014.     PO            Punch Operator
  1015.     PPA           Print Paper Airplanes
  1016.     PPL           Perform Perpetual Loop
  1017.     PPP           Print Programmer's Picture
  1018.     PPSW          Pack program status word
  1019.     PRS           PRint and Smear
  1020.     PSP           Print and Shred Paper
  1021.     PSP           Push Stack Pointer
  1022.     PSR           Print and Shred Ribbon
  1023.     QBB           Query Bit Bucket
  1024.     QWA           Quit While Ahead
  1025.  
  1026. ------------------------------------------------------------------------
  1027.